using B.S.XZYData.Infrastructure;
using SqlSugar;
using System;

namespace TestWarehousingFix
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("=== 入库表修复测试程序 ===");

            try
            {
                // 创建数据库连接配置
                var connectionConfig = new ConnectionConfig
                {
                    ConnectionString = "Server=localhost;Database=XZYData;Uid=root;Pwd=123456;",
                    DbType = DbType.MySql,
                    IsAutoCloseConnection = true
                };

                // 创建数据库上下文
                using (var dbContext = new MyDbContext(connectionConfig))
                {
                    Console.WriteLine("数据库连接成功！");

                    // 创建表清理脚本
                    var tableCleanupScript = new TableCleanupScript(dbContext);

                    // 检查当前表状态
                    Console.WriteLine("\n=== 清理前的表状态 ===");
                    tableCleanupScript.CheckTableStatus();

                    // 执行清理
                    Console.WriteLine("\n=== 执行表清理 ===");
                    tableCleanupScript.CleanupDuplicateWarehousingTables();

                    // 检查清理后的状态
                    Console.WriteLine("\n=== 清理后的表状态 ===");
                    tableCleanupScript.CheckTableStatus();

                    Console.WriteLine("\n=== 测试完成 ===");
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine($"测试失败: {ex.Message}");
                Console.WriteLine($"异常详情: {ex}");
            }

            Console.WriteLine("\n按任意键退出...");
            Console.ReadKey();
        }
    }
}
